具体代码请看:NDKPractice项目的opencv49androidfiltereffects
1. 使用ColorMatrix颜色矩阵:
看下如何运算的:
1 | @Nullable |
2. 使用Bitmap的getPixels()
和setPixels
修改像素
如果需要修改Bitmap本身的像素,复用则需要做调整:
1 | var options = BitmapFactory.Options() |
具体代码如下:
1 | public static Bitmap gray2(@Nullable Bitmap src) { |
3. jni中操作(最好的方法)
BitmapFactory.Options可以修改图片的颜色属性
1 | var options = BitmapFactory.Options() |
jni中修改图片为黑白或者灰度的代码:
1 | Java_com_east_opencv49androidfiltereffects_BitmapUtils_gray3(JNIEnv *env, jclass clazz, |